Qt GPU渲染得问题 | 您所在的位置:网站首页 › qt webengineview白屏 › Qt GPU渲染得问题 |
配置
环境:win10,i5-8400 内置GPU UHD 630
QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts),如果开启,parallel虚拟机会花屏,如果关闭,parallel不花屏,但是cpu占用变高。这是因为虚拟机的opengl驱动实现有问题。 QtWebEngine::initialize()是只针对qml的webengine模块。 This has the same effect as setting the Qt::AA_ShareOpenGLContexts attribute with QCoreApplication::setAttribute before constructing QGuiApplication.由这段我们知道,这个和设置那个是一样的setAttribute(Qt::AA_ShareOpenGLContexts),只是次序不同而已(一个至app前,一个至app后qml前。 首先设置AA_ShareOpenGLContexts这个以后,对浏览器的参数列表才能生效,也就是AA_ShareOpenGLContexts这个是总开关,然后再细分设置参数。 1 关于渲染如果一个含有QWebengine的程序认为是两个程序,qt程序默认是使用AA_UseDesktopOpenGL的,经测试,如果主动设置为AA_UseSoftwareOpenGL,在视频页面,本来gpu仅需要10%左右,那么cpu模拟则会多出20~50%的cpu,而且还是但视频页面的。所以,qt主程序一般情况下不要使用这个。需要软件渲染目前已知是在vmware虚拟机上。 setAttribute除了Qt::AA_ShareOpenGLContexts,其他都是对主程序有作用。对于webengine则是通过参数列表来实现。 AA_UseSoftwareOpenGL会极大的加深cpu使用率,所以对于图形图像要谨慎使用此操作。 AA_ShareOpenGLContexts + AA_UseOpenGLESwebengineview 全部cpu,未启用 qml 视频使用gpu AA_ShareOpenGLContexts + AA_UseDesktopOpenGLwebengineview 大部分gpu,Rasterization disable qml 视频使用gpu cpu和gpu比AA_UseOpenGLES使用率略低。 AA_ShareOpenGLContexts + AA_UseSoftwareOpenGLwebengineeview全部cpu,未启用 qml使用cpu 性能排名DesktopOpenGL > OpenGLES > Soft RX580支持开启web 使用gpu,即context共享,但是不可主动开启gpu光栅化 RX580开启GLES,qml的视频区域渲染是gpu,但是web里面,画笔及其卡顿,都是cpu运算的。但是web的chrome://gpu页面却显示软件模拟,能否说明es的设置是无效的?但是为何gpu也的确会占用呢?opengles 和台式机显卡有什么关系?不可用吗? 关于webengineview的测试 默认情况下和cef的差异性
仅有Surface Synchronization一项不同,另一项是不可知,和可知不可用不同。 实机测试测试流程:上古机器首先检验是否支持web加速,如果支持,逐步放开内部参数设置。 问题1:enable光栅化,如果不支持,会出现什么情况?会默认使用不加速的吗? 问题2:如果忽略了黑名单列表会出现什么现象? AMDx255,HD4300亮机卡,娱乐大师跑分23000,2235。支持GL3.2/3.3 core(为何GL2.0core不支持?),不支持opengles,500G,7200转,启动时间2.65 1.65 2.25 1.40 1.39 画笔绘制低,尚可勉强使用 AMDx255,Nvidia6150se 430自带亮机卡,娱乐大师,23000,455,支持gl2.0/2.1 noprof,其余全部不支持 画笔不可用状态,更慢 启动时间2.00 1.06 0.98 1.5 1.06 附件列表
|
CopyRight 2018-2019 实验室设备网 版权所有 |